1. Field of the Invention
The present invention generally relates to computer systems, specifically to a method and system for controlling the powering up of a computer system and its components, and more particularly to a method of monitoring the state of a computer system during power-up.
2. Description of Related Art
The basic structure of a conventional computer system includes one or more processing units which are connected to various peripheral devices, including input/output (I/O) devices such as a display monitor, keyboard, graphical pointer (mouse), and a permanent storage device or hard disk, and a memory device (such as random access memory or RAM) that is used by the processing units to carry out program instructions. Computers also have firmware, referred to as read-only memory (ROM) or read-only storage (ROS), whose primary purpose is to seek out and load an operating system from one of the peripherals (usually the permanent memory device) whenever the computer is first turned on.
Processing units communicate with the peripheral devices by various means, including a generalized interconnect or bus, or direct memory access channels. A computer system may have many additional components such as serial, parallel, and universal system bus (USB) ports for connection to, e.g., modems, printers or scanners. There are other components that might be used in conjunction with the foregoing components; for example, a display adapter might be used to control a video display monitor, a memory controller can be used to access the system memory device, etc.
Conventional computer systems often allow the user to add or remove various components after delivery from the factory. For peripheral devices, this can be accomplished using an xe2x80x9cexpansionxe2x80x9d bus, such as the Industry Standard Architecture (ISA) bus or the Peripheral Component Interconnect (PCI) bus. Another component that is commonly added by the user is main memory. This memory is often made up of a plurality of memory modules that can be added or removed as desired.
Even processing units can be added or swapped out, in more recent computer designs. A plurality of processing clusters can be connected by respective processor buses to a system bus. Each processing cluster is adapted to receive a plurality of individual processors. A given processor is physically mounted on a processor board, and electrically connected to various leads on the board, using a socket. For example, each processing cluster may be,a processor quad, that is, having four sockets and so receiving a maximum of four processors.
A computer""s operating system (OS) can be adapted to utilize several processors in carrying out program instructions. The OS selects one of the plurality of processors to be a service processor, primarily dedicated to dispatching tasks and managing information relating to the basic functioning of the operating system itself, such as handling device drivers and features of the graphical user interface (GUI) that is employed to present information to the user, and allow the user to input system commands.
The OS also uses the service processor to distribute program instructions among the other processors.
Expansion buses such as the ISA and PCI buses were originally very limited, in that the entire computer system had to be powered down before any peripheral device could be added to or removed from a PCI adaptor slot, and then powered up again (rebooted) to properly initialize the operating system and any new peripheral device. More recently, computer hardware components such as xe2x80x9chot-pluggablexe2x80x9d PCI adapters have been devised that can be added or removed from a computer system while the system is fully operational, without any service interruption. Each PCI adapter slot along the PCI bus has a separate power line, a separate reset line, and a switch connecting the slot to the PCI bus, allowing the slot to be electrically isolated from the PCI bus, and reactivated after insertion of a new PCI device into the slot.
Voltage regulator modules (VRMs) are used to produce the required power sources/references for the various computer components at precise voltages. While processors and system RAM can be added or swapped out in some conventional systems, these systems must still typically be powered down for VRM upgrades or service.
Considering the complexity of powering up these various components, and given the many subassemblies, cables, and connections contained in current systems, it is very easy for a problem to arise in the supply of power to a computer system. If any of these items is improperly assembled, the computer system may power on in a semi-functional, or undefined, state. This condition may cause an unknown loss of data integrity, or even damage to parts of the system. The prior art is inadequate in providing a means for checking the states of the various parts of a computer system before allowing the system to power-on.
In light of the foregoing, it would be desirable to provide an improved method of checking a computer system before a power-on. It would be further advantageous if the method could be implemented in a compact structure located on the system motherboard, and leverage existing structures and components in order to minimize cost and design complexity.
It is therefore one object of the present invention to provide an improved computer system.
It is another object of the present invention to provide a computer system having improved control over the power-on of the various computer components.
It is yet another object of the present invention to provide a method of monitoring the state of computer components for gating power-on control.
The foregoing objects are achieved in a method of controlling the power-on of a computer system, generally comprising the steps of providing a plurality of monitor lines to respective components of the computer system, interconnecting the monitor lines to a logic control circuit, monitoring the monitor lines using the logic control circuit in response to a power-on reset signal, and executing a system power-on sequence in response to a determination by the logic control circuit that the components of the computer system are functioning properly. In the embodiment wherein the computer system has a plurality of CPU slots which may receive a system CPU or a terminator cartridge, the logic control circuit determines that one of the system CPUs or terminator cartridges is plugged into each of the CPU slots. The logic control circuit can further determine that a properly matched CPU cartridge has been installed into the system, and that multiple CPUs contain compatible power supply requirements. The logic control circuit can also determine that the main power supply has been properly connected to the system motherboard, and that all daughter cards are properly installed on the motherboard and power supply connections to the daughter cards have been properly installed. Finally, the logic control circuit can also determine that a power regulator (such as a voltage regulator module or on-cartridge power regulator) is functioning properly.
The above as well as additional objectives, features, and advantages of the present invention will become apparent in the following detailed written description.